import javax.swing.*;
import javax.swing.border.LineBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Map;

public class AnotherFrame extends JFrame {
    public AnotherFrame(Map<String, String> map) {
        initComponents(map);
    }

    public void initComponents(Map<String, String> map) {

        // region 窗口初始化部分

        /* 设置窗口标题 */
        setTitle("Check in complete!");
        /* 设置窗口最小尺寸 */
        setMinimumSize(new Dimension(450, 300));
        /* 设置窗口布局格式 frameContent:窗口内容容器 */
        var frameContent = getContentPane();
        frameContent.setLayout(new BorderLayout());
        /* 设置默认关闭 */
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        /* 设置窗口位置 */
        setLocation(100, 200);

        // endregion

        // region 元件初始化部分

        /* 主题区域 */
        JPanel panelMain = new JPanel();
        /* 标题框 */
        JLabel labelTitle = new JLabel();
        /* 中间文字区域 */
        JTextArea textAreaMain = new JTextArea();
        /* 底部按钮区域 */
        JButton buttonFinish = new JButton();


        // endregion

        // region panelMain设置区域

        /* 设置panelMain为边界布局 */
        panelMain.setLayout(new BorderLayout());

        // endregion

        // region textField设置区域

        /* 设置标题文字 */
        labelTitle.setText("You have checked in successfully.");
        /* 文字居中 */
        labelTitle.setHorizontalAlignment(JLabel.CENTER);
        /* 设置字体 */
        labelTitle.setFont(new Font("Microsoft YaHei UI", Font.BOLD, 20));

        /* 添加到主区域 */
        panelMain.add(labelTitle, BorderLayout.NORTH);

        // endregion

        // region textAreaMain设置区域

        /* 设置边框及边距 */
        textAreaMain.setBorder(new LineBorder(Color.GRAY,2));

        /* 设置中心文字 */
        StringBuilder stringBuilder = new StringBuilder();
        map.forEach((key, value) -> {
            if (!key.equals("Book reference code")) {
                stringBuilder.append(key).append(" : ").append(value).append("\n");
            }
        });
        textAreaMain.setText(stringBuilder.toString());
        /* 设置字体不可更改 */
        textAreaMain.setEnabled(false);
        /* 设置字体颜色 */
        textAreaMain.setDisabledTextColor(Color.black);

        /* 添加到中心区域 */
        panelMain.add(textAreaMain,BorderLayout.CENTER);

        // endregion

        // region buttonFinish设置区域

        /* 设置按钮文字 */
        buttonFinish.setText("Finish");

        /* 设置按钮点击退出 */
        buttonFinish.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });


        /* 添加到主区域 */
        panelMain.add(buttonFinish,BorderLayout.SOUTH);

        // endregion

        // region 窗口应用区域
        /* 主区域应用panelMain */
        frameContent.add(panelMain, BorderLayout.CENTER);
        /* 自动调整间距 */
        pack();
        //endregion

    }


}
